<?php namespace Admin\Controller;



class CategoryController extends  CommonController
{
	protected $db;
	/**
	 * 构造方法
	 */
	public function __init()
	{
		$this->db = new \Common\Model\Category;
	}
	/**
	 * 首页
	 */
	public function index()
	{
		//获取category数据表所有数据
		$cateData = Db::table('category')->get();
		//p($cateData);				            
		//Data::tree($data, $title, $fieldPri = 'cid', $fieldPid = 'pid');
		//系统服务--数据
		//注意Data::tree里面第三个参数和第四个参数，默认是cid和pid		
		$cateData = Data::tree($cateData,"cname",$fieldPri = 'cid', $fieldPid = 'pid');//树杈结构
		//分配到index页面
		View::with('cateData',$cateData);
		//载入页面
		View::make();
	}
	/**
	 * 添加分类
	 */
	public function add()
	{
		
		
		if(IS_POST)
		{
			//p($_POST);die;
			if(!$this->db->store())
			{
				//添加失败
				View::error($this->db->getError());
			}else{
				//添加成功并跳转
				View::success('添加成功',U('index'));
			}
		}
		
		$data = Db::table('type')->get();
		//分配数据
		View::with('data',$data);
		//载入页面
		View::make();
	}
	/**
	 * 添加子类
	 */
	public function addSon()
	{
		//处理所属分类
		$cid = Q("get.cid",0,'intval');		
		//获取数据
		$data = Db::table('category')
				->where('cid','=',$cid)
				//->field('cid,cname')
				->first();
		//p($data);
		//分配到添加子分类页面
		View::with('data',$data);
		//获取所属类型表数据
		$typeData = Db::table('type')->get();
		//p($typeData);
		//分配到页面
		View::with('typeData',$typeData);
		if(IS_POST)
		{
			//var_dump($_POST);die;
			
			if(!$this->db->store())
			{
				//添加失败
				View::error($this->db->getError());
			}else{
				//添加成功并跳转
				View::success('添加成功',U('index'));
			}
		}
		
		//载入添加子类页面
		View::make();
	}
	/**
	 * 编辑子分类
	 */
	public function edit()
	{
		if(IS_POST)
		{
			if(!$this->db->edit())
			{
				//编辑失败
				View::error($this->db->getError());
			}else{
				//编辑成功
				View::success('编辑成功',U('index'));
			}
		}
		//获得旧的cid
		$cid = Q('get.cid',0,'intval');
		//获得cid=$cid这条数据
		$oldData = $this->db->where('cid','=',$cid)->first();
		//分配数据到编辑页面
		View::with('oldData',$oldData);
		//处理所属分类
		$cateData = $this->db->getCateData($cid);
		//分配变量到编辑页面
		View::with('cateData',$cateData);
		//处理所属类型
		$typeData = Db::table('type')
				    ->get();
		//分配数据
		View::with('typeData',$typeData);
		
		
		//载入页面
		View::make();
	}
	/**
	 * 删除
	 */
	public function del()
	{
		//获取索要删除的get传进的cid
		$cid = Q('get.cid',0,'intval');
		//执行删除
		$this->db->del($cid);
		//成功跳转
		$this->success('删除成功',U('index'));
	}
	
}
